Skip to content

Enhance UI, plugin configuration, and web features - #971

Merged
qianmoQ merged 29 commits into
devlive-community:devfrom
qianmoQ:2026.0.0
Oct 27, 2026
Merged

qianmoQ merged 29 commits into
devlive-community:devfrom
qianmoQ:2026.0.0

Conversation

@qianmoQ

@qianmoQ qianmoQ commented Oct 27, 2026

Copy link
Copy Markdown
Member

Changelog category (leave one)

  • New Feature
  • Bug Fix
  • Documentation (changelog entry is not required)
  • Other

Changelog entry (Details of this change)

If there is an issue connection, write it to the end of the question
e.g: issue-7
Please delete this information when submitting

  • e.g: Support xxxx

Affected version

  • e.g: latest version

Bundle default translations and resolve external overrides from configuration locations.

Cache successful requests and merge remote messages with the setup fallbacks.
Keep only selected items highlighted and preserve native link behavior across each menu row.
Keep header popups above page controls and adapt navigation and action spacing to the viewport.
Share document capture listeners across open panels and dismiss only the top layer on Escape.

Keep outside controls active and clean up listeners and delayed closes when panels disappear.
Move IConfigure models from metaforge-service into the plugin SPI
(metaforge-plugin) and let every connector expose its fields through
Plugin#getConfigure, removing the external YAML configure chain
(31 yaml files, loadYamlConfigure) and the IDEA spring.config.location
workaround. The API JSON contract stays unchanged.

Also rework the create-source wizard: map step groups to the backend
configure/authorization/advanced groups, resize the modal per step,
switch form fields to a two-column grid and rebuild the key-value
array editor.
Teleport MfDropdown and MfPopover overlays to body and pin them with
position: fixed (shared useOverlayPosition), so menus inside scrolling
tables and cards are no longer clipped or force scrollbars. Register
teleported overlays with useDismissableLayer so clicks inside them do
not dismiss the layer.
Restore the preparedConfigure step lost in the YAML removal so editing a
source prefills host/port/credentials and custom entries, and skip empty
keys while mapping stored configures.
Toggle the key-value editor between the row-based form and a textarea
accepting one key=value per line, keep the wizard footer pinned via the
modal footer slot, and drop empty entries before testing or saving.
…scriptors

- Rename IConfigure family to PluginConfigure*, runtime classes to
  RuntimeConfigureField/Type and spi.model.Configure to RuntimeConfigure
- Rename Plugin.getConfigure() to describe() and configures() to
  runtimeConfigures()
- Implement describe() for the remaining connector plugins
- Add category field with PluginConfigureCategory and declare it for
  all connector plugins
- Add zh/en descriptions, features and scenes to every connector
Apply typed business conditions and date ranges before pagination while preserving data visibility.
Keep expanded filters in one wrapping row and provide a custom calendar with keyboard navigation.
Use page-specific fields with expandable filters, translated labels and request race protection.
Remove redundant breadcrumbs and align page titles and content spacing across shared layouts.
Validate custom role codes, enforce uniqueness and bind edits to the original identifier.
Replace lazy menu collections with SQL projections and atomic JDBC relationship updates.

Handle empty assignments, partial selection and navigation refresh without ORM sessions.
Verify portal placement, viewport clamping, keyboard dismissal and observer cleanup.
Require ADMIN for management operations while preserving account and editor endpoints.
- migrate all icon usages to semantic lucide equivalents and pin sizes
  with the size prop (fontSize styles do not scale lucide SVGs)
- rebuild the menu icon registry from @lucide/vue exports and keep
  legacy antd name aliases so stored menu icons keep rendering
- inline the GitHub brand SVG in the footer (brand icons left lucide)
- drop @ant-design/icons-vue from dependencies
- menu form: searchable selects for parent, redirect and i18n key
  fields; i18n options are flattened from the active locale messages
  so both keys and translated labels can be searched
- drawers: pin action buttons in the footer slot while the body keeps
  scrolling internally (menu, table create, snippet, function, dataset
  configure); submit via native form association from the footer
Move user pages to root paths, group administration under /admin and retain legacy redirects.

Migrate menu groups once while preserving IDs and role assignments.
- add explicit size props to toolbar, list and tile icons that
  previously inherited font-size from antd's 1em scaling
- otherwise they render at the 24px lucide default and overflow
  dense toolbars and inline text rows
@qianmoQ
qianmoQ merged commit e04c432 into devlive-community:dev Oct 27, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant